package com.appshelves.model;

import com.appshelves.model.saveable.ChangeableList;

class ModelAPI {

    ChangeableList<Shelf> getShelves() {
        return getAccessor().getShelves();
    }

    ChangeableList<AppData> getAppData() {
        return getAccessor().getAppData();
    }

    ///

    static ModelImpl getModel() {
        return ModelImpl.instance();
    }

    static ModelAccessor getAccessor() {
        return ModelAccessor.instance();
    }

    static ModelCreator getCreator() {
        return ModelCreator.instance();
    }

    static ModelEvents getEvents() {
        return ModelEvents.instance();
    }

    ///

    public static boolean isLoaded() {
        return ModelImpl._instance != null;
    }

}
